package cn.medemede;

//发起人
class Originator {
    //棋子的状态，与备忘录中的属性一致
    private String id;
    private String name;
    private int x;
    private int y;

    //构造函数
    Originator(String id, String name, int x, int y){
        this.id=id;
        this.name=name;
        this.x=x;
        this.y=y;
    }

    //棋子的移动
    void ChangeXY(int x, int y){
        this.x=x;
        this.y=y;
        saveChess();  //每次位置变化后都保存
    }

    //发起保存“备忘录”
    private void saveChess(){
        Chess c=new Chess();
        c.setChess(id,name,x,y); //生成备忘录
        Charetaker.addChess(c); //请求管理者保存
    }

    //悔棋操作，悔棋i步
    void undo(int i){
        Chess c=Charetaker.getChess(i);
        id=c.getId();
        name=c.getName();
        x=c.getX();
        y=c.getY();
        toView();
    }

    //显示
    void toView(){
        System.out.println(id+"方的"+name+"，位置：("+x+","+y+")");
    }
}

